import currency from 'currency.js'
import _ from 'lodash'

// precision指代精确到小数点哪一位，可选0，1，2…
// symbol则是数字前的符号，一般配置货币符号
// decimal选项是配置小数点那一位的符号（替换小数点）
// separator指代分隔符，按照三位数一个分隔符来格式化
// flag是都需要显示分隔符
// scale 缩放倍数
export function number_Format(precision, scale, flag = false, symbol = "￥", separator = ',') {
  let num = this ? Number(this + '') : 0
  console.log(num);
  if (!_.isNumber(num)) {
    num = 0
  }
  if (_.isNumber(scale)) {
    if (scale >= 1) {
      num = _.multiply(num, Math.pow(10, scale))
    } else {
      num = _.divide(num, Math.pow(10, Math.abs(scale)))
  console.log(num);

    }
  }
  return currency(num, { precision, symbol: flag ? symbol : '', separator: flag ? separator : '' }).format()
}
//args 数组
export function number_tranAdd(...args) {
  let num = Number(this + '')
  return args.reduce((prev, cur) => currency(prev).add(cur).value, num)
}